package com.zy.scwproject.component;

import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;

import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;

import lombok.Data;
import lombok.ToString;
import lombok.extern.slf4j.Slf4j;

import java.io.FileInputStream;
import java.io.InputStream;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.UUID;

/**
 * @Author: zy 690748807@qq.com
 * @Description: TODO
 * @Date: 2024/5/19 20:34
 * @Version: 1.0
 * @name 方法名字：文件上传的方法类
 */
@Component
@Slf4j
public class OssTemplate {

//    String endpoint = "";
//    String accessKeyId = "";
//    String accessKeySecret = "";
//    String bucket = "2022-zytest";

    // Endpoint外网访问域名，以杭州为例。
    String endpoint = "oss-cn-beijing.aliyuncs.com";
    // accessKeyId 和 accessKeySecret 是先前创建用户生成的
    String accessKeyId = "LTAI5t6e64uvSbasvVy1LywG";
    String accessKeySecret = "tl8SyFI3JR4pfG52hDfJx5BBSbT71l";
    String bucket = "2022-zytest";
    public  String upLoade(String fileName, InputStream inputStream) {
        // Endpoint外网访问域名，以杭州为例。
        String endpoint = "oss-cn-beijing.aliyuncs.com";
        // accessKeyId 和 accessKeySecret 是先前创建用户生成的
        String accessKeyId = "LTAI5t6e64uvSbasvVy1LywG";
        String accessKeySecret = "tl8SyFI3JR4pfG52hDfJx5BBSbT71l";

        // 创建OSSClient实例。
        OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);

        // 上传文件流。
        // InputStream inputStream = new FileInputStream("/Users/xxyy/qq.txt");
      //  InputStream inputStream = new FileInputStream("/Users/xxyy/picture/美女+车/5.jpg");
        String uuid = UUID.randomUUID().toString();
        Date date=new Date();
        System.out.println("当前的日期是------>"+date);

        /**
         * 创建格式化时间日期类
         *构造入参String类型就是我们想要转换成的时间形式
         */
        SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

        System.out.println("格式化后的时间------->"+format.format(date));

        ossClient.putObject("2022-zytest", "test/"+uuid+"_"+fileName, inputStream);

        // 关闭OSSClient。
        ossClient.shutdown();
                String fileNameurl = "https://"+bucket+"."+endpoint+"/test/"+uuid+"_"+fileName ;

        log.debug("文件上传成功-{}",fileNameurl);
        return fileNameurl;//服务器文件的完整路径需要拼接
    }

}
